package com.xiyu.service.service.restaurant;

import com.xiyu.service.vo.restaurant.dish.DishMultipleGetOutput;
import com.xiyu.service.vo.restaurant.dish.DishSingleGetOutput;
import com.xiyu.service.vo.restaurant.dish.DishListQueryDishTypeOutput;
import com.xiyu.service.vo.restaurant.dish.DishSingleGetDishTypeOutput;
import com.xiyu.service.vo.restaurant.dish.DishDishTypeUpdateInput;
import com.xiyu.service.vo.restaurant.dish.DishDishTypeCreateInput;
import com.xiyu.service.vo.restaurant.dish.DishPageQueryDishTypeOutput;
import com.xiyu.service.vo.restaurant.dish.DishPageQueryDishTypeInput;
import com.xiyu.service.vo.restaurant.dish.DishUpdateInput;
import com.xiyu.service.vo.restaurant.dish.DishCreateInput;
import com.xiyu.service.vo.restaurant.dish.DishQueryInput;
import com.xiyu.service.vo.restaurant.dish.DishQueryOutput;
import java.util.*;

import com.xiyu.service.framework.web.web.core.pojo.PageResult;

/**
 * 餐品管理 Service 接口
 */
public interface DishService {

    PageResult<DishQueryOutput> query(DishQueryInput inputVO);

    Long create(DishCreateInput inputVO);

    Boolean deleted(Long id);

    Boolean update(DishUpdateInput inputVO);

    PageResult<DishPageQueryDishTypeOutput> pageQueryDishType(DishPageQueryDishTypeInput inputVO);

    Long dishTypeCreate(DishDishTypeCreateInput inputVO);

    Boolean dishTypeUpdate(DishDishTypeUpdateInput inputVO);

    Boolean dishTypeDelete(Long id);

    DishSingleGetDishTypeOutput singleGetDishType(Long id);

    List<DishListQueryDishTypeOutput> listQueryDishType();

    DishSingleGetOutput singleGet(Long id);

    List<DishMultipleGetOutput> multipleGet(List<Long> ids);

}
